package com.start.pay.core.entity;

import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.annotation.TableName;
import com.start.common.entity.StartBaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

@Data
@TableName("start_platform_pay_config")
public class StartPlatformPlayConfig extends StartBaseEntity {
    /**
     * 名称
     */
    @Schema(name = "名称")
    private String name;
    /**
     * 平台类型
     */
    @Schema(name = "平台类型")
    private String platformType;
    /**
     * AppId
     */
    @Schema(name = "AppId")
    private String appId;

    @Schema(name = "是否启用", description = "0 未启用 1 启用")
    private Integer isEnable;

    /**
     * 服务商模式下的子商户公众账号ID.
     */
    @Schema(name = "服务商模式下的子商户公众账号ID.")
    private String subAppId;

    @Schema(name = "是否服务商", description = "0 否 1是")
    private Integer isSub;


    /**
     * 商户号id
     */
    @Schema(name = "商户号id")
    private String mchId;


    /**
     * 商户密钥
     */
    @Schema(name = "商户密钥")
    private String mchKey;


    /**
     * 企业支付密钥
     */
    @Schema(name = "企业支付密钥")
    private String entPayKey;


    /**
     * 服务商模式下的子商户号
     */
    @Schema(name = "服务商模式下的子商户号")
    private String subMchId;


    /**
     * 证书
     */
    @Schema(name = "证书")
    private String certificate;


    /**
     * 消息类型
     */
    @Schema(name = "消息类型")
    private String msgDataFormat;

    @Schema(name = "支付成功回调地址")
    private String notifyUrl;
    @Schema(name = "退款回调地址")
    private String notifyRefundUrl;
    @Schema(name = "服务器域名")
    private String serverDomain;
    @Schema(name = "服务器域名类型", description = "http 或者 https")
    private String serverDomainType;
    @Schema(name = "扩展参数")
    private JSONObject prop;
    @Schema(name = "签名类型", description = "具体参考各个支付平台")
    private String signType;

}
